package net.xdclass.coupon.service;

import net.xdclass.common.JsonData;
import net.xdclass.coupon.enums.CouponCategory;
import net.xdclass.coupon.request.GrantCouponRequest;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author yanghuanxi
 * @since 2023-12-05
 */
public interface CouponService {

    /**
     * 分页查询优惠券
     * @param page
     * @param size
     * @return
     */
    JsonData pageCoupon(int page, int size);

    /**
     * 领取优惠券
     * @param id
     * @param category
     * @return
     */
    JsonData drawCoupon(Long id, CouponCategory category);

    /**
     * 发放优惠券【for new user】
     * @param request
     * @return
     */
    JsonData grantCoupon(GrantCouponRequest request);
}
